package com.tubi.Stream;
  /////中间方法
import java.util.ArrayList;
import java.util.stream.Stream;

public class Stream3 {
    public static void main(String[] args) {

        ArrayList<String> list = new ArrayList<>();
        list.add("荣磊");
        list.add("荣磊");
        list.add("荣磊3");
        list.add("荣磊2");
        list.add("磊了");
        list.add("帅哥");
        //| Stream<T> filter(Predicate predicate)           | 用于对流中的数据进行过滤                                   |
//        list.stream().filter(i->i.startsWith("荣")).forEach(s-> System.out.println(s));
        //| Stream<T> limit(long maxSize)                   | 返回此流中的元素组成的流，截取前指定参数个数的数据         |
//        list.stream().limit(3).forEach(i-> System.out.println(i));
        //| Stream<T> skip(long n)                          | 跳过指定参数个数的数据，返回由该流的剩余元素组成的流    去除前面的留下后面的    |
//        list.stream().skip(3).forEach(i-> System.out.println(i));
        //| static <T> Stream<T> concat(Stream a, Stream b) | 合并a和b两个流为一个流                                     |
//        ArrayList<String> list2 = new ArrayList<>();
//        list2.add("荣磊");
//        list2.add("荣磊3");
//        list2.add("荣磊2");
//        list2.add("磊了");
//        list2 .add("帅哥");
//        Stream.concat(list.stream(), list2.stream()).forEach(i-> System.out.println(i));
        //| Stream<T> distinct()                            | 返回由该流的不同元素（根据Object.equals(Object) ）组成的流 |
        list.stream().distinct().forEach(i-> System.out.println(i));
    }
}
